package mr.ali.videoapp.portal.service;

import com.baomidou.mybatisplus.extension.service.IService;
import mr.ali.videoapp.portal.Bo.LoginBO;
import mr.ali.videoapp.portal.model.OpenId;
import org.springframework.transaction.annotation.Transactional;

import java.io.IOException;
import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author Mr-ali
 * @since 2024-08-01
 */
public interface IOpenIdService extends IService<OpenId> {

   /**
    * 获取用户的唯一OpenId
    *
    * @param loginBO 登录信息对象，包含获取OpenId所需的参数
    * @return 用户的唯一OpenId
    * @throws IOException 如果请求失败，则抛出IOException异常
    */
   /**
    * 获取用户的唯一OpenId
    */
  OpenId getOpenId(LoginBO loginBO) throws IOException;

    @Transactional(rollbackFor = Exception.class)
    OpenId getOpenIdIkran(LoginBO loginBO) throws IOException;

    Integer deleteStatus(Integer id, Integer status);

   List<OpenId> getAllOpenId();

   Integer updateOpenId(Integer id, Integer status, Long statusCreate);

    Integer UpLanguage(Integer id, Integer language);

    void updateNotMoney(Integer id, Double money, Boolean close ,String channel);
}
